<html>
<head><meta charset="utf-8"><title>Const-checking not being run on #66884? · t-compiler/const-eval · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/index.html">t-compiler/const-eval</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html">Const-checking not being run on #66884?</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="182581088"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182581088" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Dylan MacKenzie (ecstatic-morse) <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182581088">(Dec 04 2019 at 17:57)</a>:</h4>
<p><a href="https://github.com/rust-lang/rust/issues/66884" target="_blank" title="https://github.com/rust-lang/rust/issues/66884">#66884</a> changes a bunch of <code>std</code> functions to <code>const</code>, but that PR appears to pass CI even with operations that <a href="https://github.com/rust-lang/rust/pull/66884#discussion_r353498905" target="_blank" title="https://github.com/rust-lang/rust/pull/66884#discussion_r353498905">should be illegal in a const context</a>. </p>
<p>The reason we're not at DEFCON 2 right now is that I can't reproduce this on the playground. I'm gonna try to reproduce this in-core. I'm wondering if the <code>const</code> versions in the PR are getting <code>cfg</code>-ed out?</p>



<a name="182581119"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182581119" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Dylan MacKenzie (ecstatic-morse) <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182581119">(Dec 04 2019 at 17:57)</a>:</h4>
<p>cc <span class="user-mention" data-user-id="124288">@oli</span> lemme know if you have found anything else</p>



<a name="182585732"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182585732" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182585732">(Dec 04 2019 at 18:40)</a>:</h4>
<p>does the <code>#[rustc_const_unstable(feature = "const_option_match")]</code> somehow interact with cfgs ? is this <code>const fn unwrap_or_else</code> cfg-ed out when <code>const_option_match</code> is not enabled ?</p>



<a name="182586274"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182586274" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Dylan MacKenzie (ecstatic-morse) <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182586274">(Dec 04 2019 at 18:45)</a>:</h4>
<p>My understanding is that the string is just for documentation. I'll check to see if that's correct.</p>



<a name="182587457"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182587457" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Dylan MacKenzie (ecstatic-morse) <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182587457">(Dec 04 2019 at 18:56)</a>:</h4>
<p>Well and also to enable the feature downstream, but it should never compile out the function</p>



<a name="182588348"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182588348" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Dylan MacKenzie (ecstatic-morse) <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182588348">(Dec 04 2019 at 19:06)</a>:</h4>
<p><span class="user-mention" data-user-id="124288">@oli</span> So apparently <code>min_const_fn</code> is not enforced for <code>rustc_const_unstable</code> functions, but <code>qualify_min_const_fn</code> is AFAICT the only place where restrictions on generic parameters are checked.</p>
<div class="codehilite"><pre><span></span><span class="w">    </span><span class="sd">/// Returns `true` if this function must conform to `min_const_fn`</span>
<span class="w">    </span><span class="k">pub</span><span class="w"> </span><span class="k">fn</span> <span class="nf">is_min_const_fn</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span><span class="w"> </span><span class="n">def_id</span>: <span class="nc">DefId</span><span class="p">)</span><span class="w"> </span>-&gt; <span class="kt">bool</span> <span class="p">{</span><span class="w"></span>
<span class="w">        </span><span class="c1">// Bail out if the signature doesn&#39;t contain `const`</span>
<span class="w">        </span><span class="k">if</span><span class="w"> </span><span class="o">!</span><span class="bp">self</span><span class="p">.</span><span class="n">is_const_fn_raw</span><span class="p">(</span><span class="n">def_id</span><span class="p">)</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w">            </span><span class="k">return</span><span class="w"> </span><span class="kc">false</span><span class="p">;</span><span class="w"></span>
<span class="w">        </span><span class="p">}</span><span class="w"></span>
<span class="w">        </span><span class="k">if</span><span class="w"> </span><span class="kd">let</span><span class="w"> </span><span class="n">Abi</span>::<span class="n">RustIntrinsic</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="bp">self</span><span class="p">.</span><span class="n">fn_sig</span><span class="p">(</span><span class="n">def_id</span><span class="p">).</span><span class="n">abi</span><span class="p">()</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w">            </span><span class="k">return</span><span class="w"> </span><span class="bp">self</span><span class="p">.</span><span class="n">is_intrinsic_min_const_fn</span><span class="p">(</span><span class="n">def_id</span><span class="p">);</span><span class="w"></span>
<span class="w">        </span><span class="p">}</span><span class="w"></span>

<span class="w">        </span><span class="k">if</span><span class="w"> </span><span class="bp">self</span><span class="p">.</span><span class="n">features</span><span class="p">().</span><span class="n">staged_api</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w">            </span><span class="c1">// in order for a libstd function to be considered min_const_fn</span>
<span class="w">            </span><span class="c1">// it needs to be stable and have no `rustc_const_unstable` attribute</span>
<span class="w">            </span><span class="k">match</span><span class="w"> </span><span class="bp">self</span><span class="p">.</span><span class="n">lookup_stability</span><span class="p">(</span><span class="n">def_id</span><span class="p">)</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w">                </span><span class="c1">// stable functions with unstable const fn aren&#39;t `min_const_fn`</span>
<span class="w">                </span><span class="nb">Some</span><span class="p">(</span><span class="o">&amp;</span><span class="n">attr</span>::<span class="n">Stability</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="n">const_stability</span>: <span class="nb">Some</span><span class="p">(</span><span class="n">_</span><span class="p">),</span><span class="w"> </span><span class="p">..</span><span class="w"> </span><span class="p">})</span><span class="w"> </span><span class="o">=&gt;</span><span class="w"> </span><span class="kc">false</span><span class="p">,</span><span class="w"></span>
<span class="w">                </span><span class="c1">// unstable functions don&#39;t need to conform</span>
<span class="w">                </span><span class="nb">Some</span><span class="p">(</span><span class="o">&amp;</span><span class="n">attr</span>::<span class="n">Stability</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="k">ref</span><span class="w"> </span><span class="n">level</span><span class="p">,</span><span class="w"> </span><span class="p">..</span><span class="w"> </span><span class="p">})</span><span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="n">level</span><span class="p">.</span><span class="n">is_unstable</span><span class="p">()</span><span class="w"> </span><span class="o">=&gt;</span><span class="w"> </span><span class="kc">false</span><span class="p">,</span><span class="w"></span>
<span class="w">                </span><span class="c1">// everything else needs to conform, because it would be callable from</span>
<span class="w">                </span><span class="c1">// other `min_const_fn` functions</span>
<span class="w">                </span><span class="n">_</span><span class="w"> </span><span class="o">=&gt;</span><span class="w"> </span><span class="kc">true</span><span class="p">,</span><span class="w"></span>
<span class="w">            </span><span class="p">}</span><span class="w"></span>
<span class="w">        </span><span class="p">}</span><span class="w"> </span><span class="k">else</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w">            </span><span class="c1">// users enabling the `const_fn` feature gate can do what they want</span>
<span class="w">            </span><span class="o">!</span><span class="bp">self</span><span class="p">.</span><span class="n">features</span><span class="p">().</span><span class="n">const_fn</span><span class="w"></span>
<span class="w">        </span><span class="p">}</span><span class="w"></span>
<span class="w">    </span><span class="p">}</span><span class="w"></span>
</pre></div>



<a name="182588502"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182588502" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Dylan MacKenzie (ecstatic-morse) <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182588502">(Dec 04 2019 at 19:08)</a>:</h4>
<p>I think that there's two concepts here: "is callable as a min const fn in stable code" and "requires the min const fn checks", but this function is responsible for both of them.</p>



<a name="182589038"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182589038" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Dylan MacKenzie (ecstatic-morse) <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182589038">(Dec 04 2019 at 19:14)</a>:</h4>
<p>Ah, there's an <code>is_unstable_const_fn</code> that's used for the first during const-checking. I don't really have all the background here, but I think we should be running the min const fn checks on <code>rustc_const_unstable</code> functions?</p>



<a name="182591750"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182591750" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182591750">(Dec 04 2019 at 19:46)</a>:</h4>
<p>ah, regular qualif used to have a call check, too afaik</p>



<a name="182591758"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182591758" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182591758">(Dec 04 2019 at 19:46)</a>:</h4>
<p>and that should fail for generic parameters</p>



<a name="182591805"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182591805" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182591805">(Dec 04 2019 at 19:46)</a>:</h4>
<p>having parameters with the <code>const_fn</code> feature gate has always been possible</p>



<a name="182591829"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182591829" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182591829">(Dec 04 2019 at 19:47)</a>:</h4>
<p>doing anything with them but accessing assoc constants has not</p>



<a name="182607068"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182607068" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Dylan MacKenzie (ecstatic-morse) <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182607068">(Dec 04 2019 at 22:30)</a>:</h4>
<p><a href="https://play.rust-lang.org/?version=nightly&amp;mode=debug&amp;edition=2018&amp;gist=0f28739e52e2d74bdebaac4696cf87c8" target="_blank" title="https://play.rust-lang.org/?version=nightly&amp;mode=debug&amp;edition=2018&amp;gist=0f28739e52e2d74bdebaac4696cf87c8">https://play.rust-lang.org/?version=nightly&amp;mode=debug&amp;edition=2018&amp;gist=0f28739e52e2d74bdebaac4696cf87c8</a></p>



<a name="182607086"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182607086" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Dylan MacKenzie (ecstatic-morse) <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182607086">(Dec 04 2019 at 22:31)</a>:</h4>
<p>I'm  at a loss.</p>



<a name="182607293"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182607293" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Dylan MacKenzie (ecstatic-morse) <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182607293">(Dec 04 2019 at 22:33)</a>:</h4>
<p>Probably need to reduce this top-down rather than bottom up</p>



<a name="182607890"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182607890" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182607890">(Dec 04 2019 at 22:39)</a>:</h4>
<p><span class="user-mention" data-user-id="118594">@ecstatic-morse</span> are you looking to repro on the playground ?</p>



<a name="182608574"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182608574" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182608574">(Dec 04 2019 at 22:46)</a>:</h4>
<p>if so, something like <a href="https://play.rust-lang.org/?version=nightly&amp;mode=debug&amp;edition=2018&amp;gist=29afd185e26a0d92d8f05073cd596c9e" target="_blank" title="https://play.rust-lang.org/?version=nightly&amp;mode=debug&amp;edition=2018&amp;gist=29afd185e26a0d92d8f05073cd596c9e">https://play.rust-lang.org/?version=nightly&amp;mode=debug&amp;edition=2018&amp;gist=29afd185e26a0d92d8f05073cd596c9e</a> ?</p>



<a name="182641717"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182641717" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182641717">(Dec 05 2019 at 09:29)</a>:</h4>
<p>We have a staged API check in the tcx.is_const_fn function, maybe I screwed that up?</p>



<a name="182645351"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182645351" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182645351">(Dec 05 2019 at 10:22)</a>:</h4>
<p>so it's apparently not the staged api check</p>



<a name="182645484"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182645484" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182645484">(Dec 05 2019 at 10:24)</a>:</h4>
<p>IIUC, in the gist I posted, <code>unwrap_or_else</code> is not considered a "const fn" nor "min const fn" because the <code>rustc_const_unstable</code> feature mentioned is not enabled</p>



<a name="182645577"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182645577" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182645577">(Dec 05 2019 at 10:25)</a>:</h4>
<p>it's trivially a "const_fn_raw", so it'll be considered a "const fn" only if the feature is enabled: <a href="https://github.com/rust-lang/rust/blob/7fa046534e944193cc47b795b9396a7fcf411d9f/src/librustc/ty/constness.rs#L18-L21" target="_blank" title="https://github.com/rust-lang/rust/blob/7fa046534e944193cc47b795b9396a7fcf411d9f/src/librustc/ty/constness.rs#L18-L21">https://github.com/rust-lang/rust/blob/7fa046534e944193cc47b795b9396a7fcf411d9f/src/librustc/ty/constness.rs#L18-L21</a></p>



<a name="182645630"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182645630" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182645630">(Dec 05 2019 at 10:26)</a>:</h4>
<p>this is not the case in the gist or the PR (or at least the specific linked commit)</p>



<a name="182645710"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182645710" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182645710">(Dec 05 2019 at 10:27)</a>:</h4>
<p>if you enable it: you'll get the expected "calls in constant functions are limited to constant functions" - <a href="https://play.rust-lang.org/?version=nightly&amp;mode=debug&amp;edition=2018&amp;gist=eb927d9c6c076271474b2270598340ec" target="_blank" title="https://play.rust-lang.org/?version=nightly&amp;mode=debug&amp;edition=2018&amp;gist=eb927d9c6c076271474b2270598340ec">playground</a></p>



<a name="182645843"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182645843" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182645843">(Dec 05 2019 at 10:29)</a>:</h4>
<p>(and it's not considered a "min const fn" because it has a const stability attribute, <a href="https://github.com/rust-lang/rust/blob/7fa046534e944193cc47b795b9396a7fcf411d9f/src/librustc/ty/constness.rs#L90" target="_blank" title="https://github.com/rust-lang/rust/blob/7fa046534e944193cc47b795b9396a7fcf411d9f/src/librustc/ty/constness.rs#L90">https://github.com/rust-lang/rust/blob/7fa046534e944193cc47b795b9396a7fcf411d9f/src/librustc/ty/constness.rs#L90</a>)</p>



<a name="182646100"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182646100" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182646100">(Dec 05 2019 at 10:32)</a>:</h4>
<p>I don't know if that helps ? maybe I should look at the check_consts validation / min const fn qualification</p>



<a name="182647618"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182647618" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182647618">(Dec 05 2019 at 10:52)</a>:</h4>
<p>(we probably need more <code>debug!</code>s in both of those :)</p>



<a name="182650794"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182650794" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182650794">(Dec 05 2019 at 11:32)</a>:</h4>
<p>(and since I was mentioning <code>mir_const_qualif</code>: it will not run the checks because the function is not considered a const fn, so it'll bail out here <a href="https://github.com/rust-lang/rust/blob/7fa046534e944193cc47b795b9396a7fcf411d9f/src/librustc_mir/transform/mod.rs#L192-L194" target="_blank" title="https://github.com/rust-lang/rust/blob/7fa046534e944193cc47b795b9396a7fcf411d9f/src/librustc_mir/transform/mod.rs#L192-L194">https://github.com/rust-lang/rust/blob/7fa046534e944193cc47b795b9396a7fcf411d9f/src/librustc_mir/transform/mod.rs#L192-L194</a>)</p>



<a name="182653617"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182653617" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182653617">(Dec 05 2019 at 12:19)</a>:</h4>
<p>Oh the last part is the problem. Good find. <a href="https://github.com/rust-lang/rust/blob/7fa046534e944193cc47b795b9396a7fcf411d9f/src/librustc_mir/transform/check_consts/mod.rs#L80" target="_blank" title="https://github.com/rust-lang/rust/blob/7fa046534e944193cc47b795b9396a7fcf411d9f/src/librustc_mir/transform/check_consts/mod.rs#L80">https://github.com/rust-lang/rust/blob/7fa046534e944193cc47b795b9396a7fcf411d9f/src/librustc_mir/transform/check_consts/mod.rs#L80</a> should check min const fn</p>



<a name="182653663"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182653663" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182653663">(Dec 05 2019 at 12:20)</a>:</h4>
<p>Eh const fn raw</p>



<a name="182653679"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182653679" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182653679">(Dec 05 2019 at 12:20)</a>:</h4>
<p>Instead of const fn</p>



<a name="182653925"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182653925" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182653925">(Dec 05 2019 at 12:24)</a>:</h4>
<p>I'll get a PR ready</p>



<a name="182654252"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182654252" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182654252">(Dec 05 2019 at 12:28)</a>:</h4>
<p>I was wondering whether just testing over ui/consts would be enough</p>



<a name="182654270"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182654270" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182654270">(Dec 05 2019 at 12:28)</a>:</h4>
<p>but I'm not sure it'll bootstrap with the fix huhu</p>



<a name="182654324"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182654324" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182654324">(Dec 05 2019 at 12:29)</a>:</h4>
<p>(nbd probably, probably just enabling more feature gates)</p>



<a name="182656430"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182656430" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182656430">(Dec 05 2019 at 12:59)</a>:</h4>
<p><span class="user-mention" data-user-id="124288">@oli</span> for eg <a href="https://github.com/rust-lang/rust/blob/master/src/libcore/ptr/mod.rs#L1308-L1318" target="_blank" title="https://github.com/rust-lang/rust/blob/master/src/libcore/ptr/mod.rs#L1308-L1318">https://github.com/rust-lang/rust/blob/master/src/libcore/ptr/mod.rs#L1308-L1318</a> should I enable the <code>const_ptr_offset_from</code> feature only conditionally wrt bootstrap ? (I think I need to enable the feature, regardless of how and bootstrapping, it'll otherwise fail to compile with a "constant function contains unimplemented expression type")</p>



<a name="182657050"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182657050" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182657050">(Dec 05 2019 at 13:06)</a>:</h4>
<p>(in my testing I did <code>#![cfg_attr(not(bootstrap)</code> it but I'm not sure if that's correct or matters ?)</p>



<a name="182662636"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182662636" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182662636">(Dec 05 2019 at 14:17)</a>:</h4>
<p>the lack of a "trait bounds other than <code>Sized</code> on const fn parameters are unstable" error we'd expect somewhere makes me still a bit uneasy, but here it is <a href="https://github.com/rust-lang/rust/pull/67055" target="_blank" title="https://github.com/rust-lang/rust/pull/67055">https://github.com/rust-lang/rust/pull/67055</a></p>



<a name="182672199"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182672199" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182672199">(Dec 05 2019 at 15:49)</a>:</h4>
<p>You need to enable it without a cfg. The function itself has no cfgs, so if you only enable it on bootstrap, stage 1 will fail</p>



<a name="182672370"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182672370" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182672370">(Dec 05 2019 at 15:50)</a>:</h4>
<p>Oh <span aria-label="face palm" class="emoji emoji-1f926" role="img" title="face palm">:face_palm:</span>you're right</p>



<a name="182672397"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182672397" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182672397">(Dec 05 2019 at 15:50)</a>:</h4>
<p>Bootstrap doesn't need the feature gate</p>



<a name="182672438"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182672438" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182672438">(Dec 05 2019 at 15:51)</a>:</h4>
<p>Because the bootstrap compiler also has the problem</p>



<a name="182673104"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182673104" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182673104">(Dec 05 2019 at 15:56)</a>:</h4>
<p>yeah it will not bootstrap otherwise (I now realize)</p>



<a name="182673123"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182673123" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182673123">(Dec 05 2019 at 15:56)</a>:</h4>
<p>I'll adjust the comment, thanks for the quick review @oli :)</p>



<a name="182674326"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182674326" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182674326">(Dec 05 2019 at 16:08)</a>:</h4>
<p><span class="user-mention" data-user-id="124288">@oli</span> how about this ?</p>
<div class="codehilite"><pre><span></span>// Note: this is deliberately checking for `is_const_fn_raw`, as the `is_const_fn`
// checks take into account the `rustc_const_unstable` attribute combined with enabled
// feature gates. Otherwise, const qualification would _not check_ whether this
// function body follows the `const fn` rules, as an unstable `const fn` would
// be considered &quot;not const&quot;. More details are available in issue #67053.
</pre></div>



<a name="182675848"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182675848" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182675848">(Dec 05 2019 at 16:23)</a>:</h4>
<p><span class="user-mention" data-user-id="116113">@lqd</span> perfect</p>



<a name="182675924"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182675924" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182675924">(Dec 05 2019 at 16:24)</a>:</h4>
<p>thanks</p>



<a name="182675955"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182675955" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182675955">(Dec 05 2019 at 16:24)</a>:</h4>
<p>I'll push and r=you then</p>



<a name="182675976"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182675976" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182675976">(Dec 05 2019 at 16:24)</a>:</h4>
<p>Yes</p>



<a name="182678365"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182678365" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182678365">(Dec 05 2019 at 16:47)</a>:</h4>
<p>done :)</p>



<a name="182678386"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182678386" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182678386">(Dec 05 2019 at 16:47)</a>:</h4>
<p>now if you'll allow me: <a href="/user_uploads/4715/CGJj3XFFox6oasMJ0M3K3Age/pasted_image.png" target="_blank" title="pasted_image.png">pasted image</a></p>
<div class="message_inline_image"><a href="/user_uploads/4715/CGJj3XFFox6oasMJ0M3K3Age/pasted_image.png" target="_blank" title="pasted image"><img src="/user_uploads/4715/CGJj3XFFox6oasMJ0M3K3Age/pasted_image.png"></a></div>



<a name="182678827"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182678827" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> centril <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182678827">(Dec 05 2019 at 16:51)</a>:</h4>
<blockquote>
<p>I think that there's two concepts here: "is callable as a min const fn in stable code" and "requires the min const fn checks", but this function is responsible for both of them.</p>
</blockquote>
<p><span class="user-mention" data-user-id="118594">@ecstatic-morse</span> yea; we should separate them I think; see also <a href="https://github.com/rust-lang/rust/issues/64285" target="_blank" title="https://github.com/rust-lang/rust/issues/64285">https://github.com/rust-lang/rust/issues/64285</a> (feel free to assign yourself and steal)</p>



<a name="182678997"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182678997" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Christian Poveda <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182678997">(Dec 05 2019 at 16:52)</a>:</h4>
<blockquote>
<p>now if you'll allow me: <a href="/user_uploads/4715/CGJj3XFFox6oasMJ0M3K3Age/pasted_image.png" target="_blank" title="pasted_image.png">pasted image</a></p>
</blockquote>
<p>damn now I have to change my nickname...</p>



<a name="182679239"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182679239" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182679239">(Dec 05 2019 at 16:54)</a>:</h4>
<p>we're going to need bigger memes, of course you'll always be welcome christian :p</p>



<a name="182689392"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182689392" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Dylan MacKenzie (ecstatic-morse) <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182689392">(Dec 05 2019 at 18:42)</a>:</h4>
<p>Nice work <span class="user-mention" data-user-id="116113">@lqd</span>!!</p>



<a name="182689564"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182689564" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182689564">(Dec 05 2019 at 18:44)</a>:</h4>
<p>thank you :)</p>



<a name="182689630"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182689630" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Dylan MacKenzie (ecstatic-morse) <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182689630">(Dec 05 2019 at 18:45)</a>:</h4>
<p>Sorry. I went offline right after you sent your message with the repro.</p>



<a name="182689637"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182689637" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182689637">(Dec 05 2019 at 18:45)</a>:</h4>
<p>(it wasn't hard and oli told me the fix)</p>



<a name="182689710"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/146212-t-compiler/const-eval/topic/Const-checking%20not%20being%20run%20on%20%2366884%3F/near/182689710" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/146212-t-compiler/const-eval/topic/Const-checking.20not.20being.20run.20on.20.2366884.3F.html#182689710">(Dec 05 2019 at 18:46)</a>:</h4>
<p>oh no worries at all</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>